package com.dark.sys.service;

import com.dark.common.web.model.DataGrid;
import com.dark.common.web.validate.AjaxResponse;
import com.dark.sys.web.dto.UserDto;


public interface UserService {

	public void add(UserDto dto) ;
	
	public void delete(boolean type, String ids) ;
	
	public void deleteForPhysical(String ids) ;
	
	public void update(UserDto dto) ;
	
	public UserDto get(Integer id) ;
	
	public DataGrid datagrid(UserDto dto) ;
	
	public UserDto getByUsername(String username) ;

	/**
	 * 验证登录 
	 * @param username
	 * @param password
	 * @return
	 */
	public AjaxResponse validateLogin(String username, String password) ;
	
	/**
	 * 检查字段信息是否存在
	 * @param dto
	 * @return
	 */
	public boolean checkInfo(UserDto dto) ;
	
	/**
	 * 管理员修改用户的密码
	 * @param dto
	 */
	public void adminChangePassword(UserDto dto) ;
	
	/**
	 * 个人修改密码
	 * @param dto
	 */
	public AjaxResponse changePassword(UserDto dto) ;
	
	/**
	 * 修改密码前，先验证旧密码
	 * @param dto
	 * @return
	 */
	public boolean oldPasswordValidate(Integer id, String oldPassword) ;

}
